#pragma once

#include "Common.h"
#include "Size2.h"
#include "Vector2.h"

#define WINDOWMANAGER_DEFAULT_SIZE_WIDTH	1280
#define	WINDOWMANAGER_DEFAULT_SIZE_HEIGHT	1024
#define WINDOWMANAGER_DEFAULT_TITLE			"Europa Engine"
#define WINDOWMANAGER_DEFAULT_POSITION_X	0
#define WINDOWMANAGER_DEFAULT_POSITION_Y	0

class WindowManager
{
private:
	WindowManager();
public:
	~WindowManager();
public:
	static void Initialize();
	static void Resize(Size2i size);
public:
	static Vector2i GetPosition();
	static Size2i GetSize();
	static String GetTitle();
public:
	static float GetAspectRatio();
public:
	static bool IsOpen();
public:
	static void SetTitle(String title);
	static void SetPosition(const Vector2i& position);
	static void SetSize(Size2i size);
private:
	static Vector2i m_vPosition;
	static Size2i m_oSize;
	static String m_sTitle;
};